RiverSync
SPEC-DDD-FLD · v0.2
28 June 2026
Owner: Platform team

Field service — the on-site execution bounded context

The field engineer's on-site execution context and the source of truth for what happens at the customer site: the Visit lifecycle (corrective from a ticket, preventive from a maintenance plan), runbook checklist tasks, parts used, photo/document evidence, the customer sign-off that seals a visit, and the per-device maintenance plans that drive preventive scheduling. A core subdomain — on-site service is how RiverSync delivers the agreement.

DraftCore subdomainOffline-first · single writer
Drill-down of the master domain architecture. Requirements: SPEC-APP-FLD (FLD-1…10) + SPEC-APP-PTL (PTL-4). Boundaries, routes and events render from domain/domain-catalog.js — definitions are never copied per document. Visit ownership moved here from Support (SVC-SUP) with the Field service.

1Ownership & boundaries

Field owns the Visit and everything captured against it. Visit is the bridge to records it does not own — it references a Support ServiceTicket (corrective), a Devices Device, a Structure OrganizationSite (the scope-gated support fields, read for the assignment only) and an Identity engineer account. The service is offline-first: tasks, parts, evidence and sign-off are created on the device with client ids and synced idempotently — Field is the only writer of those records (SVC-14).

Reads from: Support (ServiceTicket) · Devices (registry) · Agreement (SLA tier, partner scope) · Structure (site support-visit info) · Identity (engineer accounts). RiverSync-only — the Field BFF (field.riversync.com) is membership-gated to the engineer role (AUTH-2, AUTH-5).

2Ubiquitous language

The words this context uses — the same in code, conversation and spec.

3Aggregates & invariants

The consistency boundaries — one root each, guarding its invariants in a single transaction; cross-aggregate ties are by identity.

4Context relationships

How this context meets its neighbours. Field is in a partnership with Support — a corrective ticket dispatches a visit; a signed-off visit lets Support resolve it.

5Physical view — the service API

The deployment mapping: this context becomes the Field service. Paths relative to api.riversync.com/v1; the offline client batches its queue to POST /field/sync. Access notation per the master.

RiverSync Co., Ltd. · BangkokSPEC-DDD-FLD · 1 of 2

6Domain events

Field rides the backbone: a visit lands, the engineer checks in, the visit completes; a due maintenance plan asks for a preventive visit. Every event is also consumed by Audit (SVC-8).

7Invariants in play

The modeling rules that bind this context — the master holds the full set; data integrity (DM-27…31) stays with the Field ERD drill-down.

8Revision history

VersionDateChanges
0.114 Jun 2026First draft — Field service joins the domain set (SPEC-DDD v0.5) as the eighth service. Owns Visit (moved from Support) + VisitTask · PartUsed · VisitEvidence · VisitSignoff · MaintenancePlan; /field prefix, the Field BFF, SVC-14 (offline-first single writer), and the visit.checked-in / visit.completed / maintenance.due events
0.228 Jun 2026Reframed as a Domain-Driven Design context (with the set, SPEC-DDD v0.14) — leads with ubiquitous language & aggregates (Visit, MaintenancePlan) and the context relationships (the Support partnership around a visit). Classified a core subdomain; the API is demoted to the physical view. No ownership change.
RiverSync Co., Ltd. · BangkokSPEC-DDD-FLD · 2 of 2